/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Hu-Fu
关于虎符的相关接口

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/

#import <Foundation/Foundation.h>
#import <JDCloudOCSDKApigateway/ApigatewayApiModel.h>


@implementation ApigatewayUpdateApiResult
-(id) initWithApiId:(NSString*) apiId { 
    self.apiId = apiId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiId])
    {
        [result setValue:[self apiId] forKey:@"apiId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiId = [dictionary objectForKey:@"apiId"];
    return self;
} 

@end
@implementation ApigatewayCheckApiNameExistResult
-(id) initWithApiId:(NSString*) apiId { 
    self.apiId = apiId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiId])
    {
        [result setValue:[self apiId] forKey:@"apiId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiId = [dictionary objectForKey:@"apiId"];
    return self;
} 

@end
@implementation ApigatewayDeleteApiRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiId = apiId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiId = apiId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self apiId])
    {
        [result setValue:[self apiId] forKey:@"apiId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    self.apiId = [dictionary objectForKey:@"apiId"];
    return self;
} 

@end
@implementation ApigatewayCheckApiNameExistRequest
-(id) initWithRegion:(NSString *)regionId
apiName:(NSString*)apiName
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision { 
    self.regionId = regionId;
    self.apiName = apiName;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiName:(NSString*)apiName
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision { 
    self.regionId = regionId;
    self.version = version;
    self.apiName = apiName;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiName])
    {
        [result setValue:[self apiName] forKey:@"apiName"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiName = [dictionary objectForKey:@"apiName"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    return self;
} 

@end
@implementation ApigatewayDeleteApiByNameRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiName:(NSString*)apiName { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiName = apiName;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiName:(NSString*)apiName { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiName = apiName;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self apiName])
    {
        [result setValue:[self apiName] forKey:@"apiName"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    self.apiName = [dictionary objectForKey:@"apiName"];
    return self;
} 

@end
@implementation ApigatewayCreateApisResult
-(id) initWithApiId:(NSString*) apiId { 
    self.apiId = apiId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiId])
    {
        [result setValue:[self apiId] forKey:@"apiId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiId = [dictionary objectForKey:@"apiId"];
    return self;
} 

@end
@implementation ApigatewayBatchOfflineRequest
-(id) initWithRegion:(NSString *)regionId
deploymentIds:(NSString*)deploymentIds
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.deploymentIds = deploymentIds;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deploymentIds:(NSString*)deploymentIds
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.deploymentIds = deploymentIds;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self deploymentIds])
    {
        [result setValue:[self deploymentIds] forKey:@"deploymentIds"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.deploymentIds = [dictionary objectForKey:@"deploymentIds"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayOfflineRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
deploymentId:(NSString*)deploymentId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    self.deploymentId = deploymentId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
deploymentId:(NSString*)deploymentId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    self.deploymentId = deploymentId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self deploymentId])
    {
        [result setValue:[self deploymentId] forKey:@"deploymentId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.deploymentId = [dictionary objectForKey:@"deploymentId"];
    return self;
} 

@end
@implementation ApigatewayDeployRequest
-(id) initWithRegion:(NSString *)regionId
revision:(NSString*)revision
environment:(NSString*)environment
backendServiceType:(NSString*)backendServiceType
backendUrl:(NSString*)backendUrl
descriptionValue:(NSString*)descriptionValue
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.revision = revision;
    self.environment = environment;
    self.backendServiceType = backendServiceType;
    self.backendUrl = backendUrl;
    self.descriptionValue = descriptionValue;
    self.jdsfName = jdsfName;
    self.jdsfRegistryName = jdsfRegistryName;
    self.jdsfId = jdsfId;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
revision:(NSString*)revision
environment:(NSString*)environment
backendServiceType:(NSString*)backendServiceType
backendUrl:(NSString*)backendUrl
descriptionValue:(NSString*)descriptionValue
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.revision = revision;
    self.environment = environment;
    self.backendServiceType = backendServiceType;
    self.backendUrl = backendUrl;
    self.descriptionValue = descriptionValue;
    self.jdsfName = jdsfName;
    self.jdsfRegistryName = jdsfRegistryName;
    self.jdsfId = jdsfId;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self environment])
    {
        [result setValue:[self environment] forKey:@"environment"];
    }
    if([self backendServiceType])
    {
        [result setValue:[self backendServiceType] forKey:@"backendServiceType"];
    }
    if([self backendUrl])
    {
        [result setValue:[self backendUrl] forKey:@"backendUrl"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self jdsfName])
    {
        [result setValue:[self jdsfName] forKey:@"jdsfName"];
    }
    if([self jdsfRegistryName])
    {
        [result setValue:[self jdsfRegistryName] forKey:@"jdsfRegistryName"];
    }
    if([self jdsfId])
    {
        [result setValue:[self jdsfId] forKey:@"jdsfId"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.revision = [dictionary objectForKey:@"revision"];
    self.environment = [dictionary objectForKey:@"environment"];
    self.backendServiceType = [dictionary objectForKey:@"backendServiceType"];
    self.backendUrl = [dictionary objectForKey:@"backendUrl"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.jdsfName = [dictionary objectForKey:@"jdsfName"];
    self.jdsfRegistryName = [dictionary objectForKey:@"jdsfRegistryName"];
    self.jdsfId = [dictionary objectForKey:@"jdsfId"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayDescribeDeploymentRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
deploymentId:(NSString*)deploymentId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    self.deploymentId = deploymentId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
deploymentId:(NSString*)deploymentId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    self.deploymentId = deploymentId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self deploymentId])
    {
        [result setValue:[self deploymentId] forKey:@"deploymentId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.deploymentId = [dictionary objectForKey:@"deploymentId"];
    return self;
} 

@end
@implementation ApigatewayDescribeDeploymentResult
-(id) initWithDeploymentId:(NSString*) deploymentId
        revision:(NSString*)revision
        path:(NSString*)path
        environment:(NSString*)environment
        backendServiceType:(NSString*)backendServiceType
        backendUrl:(NSString*)backendUrl
        descriptionValue:(NSString*)descriptionValue
        createTime:(NSNumber*)createTime
        jdsfName:(NSString*)jdsfName
        jdsfRegistryName:(NSString*)jdsfRegistryName
        jdsfId:(NSString*)jdsfId { 
    self.deploymentId = deploymentId;               
    self.revision = revision;               
    self.path = path;               
    self.environment = environment;               
    self.backendServiceType = backendServiceType;               
    self.backendUrl = backendUrl;               
    self.descriptionValue = descriptionValue;               
    self.createTime = createTime;               
    self.jdsfName = jdsfName;               
    self.jdsfRegistryName = jdsfRegistryName;               
    self.jdsfId = jdsfId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self deploymentId])
    {
        [result setValue:[self deploymentId] forKey:@"deploymentId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self path])
    {
        [result setValue:[self path] forKey:@"path"];
    }
    if([self environment])
    {
        [result setValue:[self environment] forKey:@"environment"];
    }
    if([self backendServiceType])
    {
        [result setValue:[self backendServiceType] forKey:@"backendServiceType"];
    }
    if([self backendUrl])
    {
        [result setValue:[self backendUrl] forKey:@"backendUrl"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self jdsfName])
    {
        [result setValue:[self jdsfName] forKey:@"jdsfName"];
    }
    if([self jdsfRegistryName])
    {
        [result setValue:[self jdsfRegistryName] forKey:@"jdsfRegistryName"];
    }
    if([self jdsfId])
    {
        [result setValue:[self jdsfId] forKey:@"jdsfId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.deploymentId = [dictionary objectForKey:@"deploymentId"];
    self.revision = [dictionary objectForKey:@"revision"];
    self.path = [dictionary objectForKey:@"path"];
    self.environment = [dictionary objectForKey:@"environment"];
    self.backendServiceType = [dictionary objectForKey:@"backendServiceType"];
    self.backendUrl = [dictionary objectForKey:@"backendUrl"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.jdsfName = [dictionary objectForKey:@"jdsfName"];
    self.jdsfRegistryName = [dictionary objectForKey:@"jdsfRegistryName"];
    self.jdsfId = [dictionary objectForKey:@"jdsfId"];
    return self;
} 

@end
@implementation ApigatewayDeleteRateLimitPolicyRequest
-(id) initWithRegion:(NSString *)regionId
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.policyId = policyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.version = version;
    self.policyId = policyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayQueryBindGroupPolicyRequest
-(id) initWithRegion:(NSString *)regionId
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.policyId = policyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.version = version;
    self.policyId = policyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayCheckPolicyNameRequest
-(id) initWithRegion:(NSString *)regionId
policyName:(NSString*)policyName { 
    self.regionId = regionId;
    self.policyName = policyName;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyName:(NSString*)policyName { 
    self.regionId = regionId;
    self.version = version;
    self.policyName = policyName;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self policyName])
    {
        [result setValue:[self policyName] forKey:@"policyName"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyName = [dictionary objectForKey:@"policyName"];
    return self;
} 

@end
@implementation ApigatewayUpdateRateLimitPolicyResult
-(id) initWithPolicyId:(NSString*) policyId { 
    self.policyId = policyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayCheckPolicyNameResult
-(id) initWithPolicyId:(NSString*) policyId { 
    self.policyId = policyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayQueryPolicyGroupListRequest
-(id) initWithRegion:(NSString *)regionId
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.policyId = policyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.version = version;
    self.policyId = policyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayDeleteRateLimitPolicyResult
-(id) initWithPolicyId:(NSString*) policyId { 
    self.policyId = policyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayBindGroupPolicyRequest
-(id) initWithRegion:(NSString *)regionId
deploymentIds:(NSString*)deploymentIds
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.deploymentIds = deploymentIds;
    self.policyId = policyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deploymentIds:(NSString*)deploymentIds
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.version = version;
    self.deploymentIds = deploymentIds;
    self.policyId = policyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self deploymentIds])
    {
        [result setValue:[self deploymentIds] forKey:@"deploymentIds"];
    }
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.deploymentIds = [dictionary objectForKey:@"deploymentIds"];
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayCreateRateLimitPolicyResult
-(id) initWithPolicyId:(NSString*) policyId { 
    self.policyId = policyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayQueryRateLimitPolicyRequest
-(id) initWithRegion:(NSString *)regionId
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.policyId = policyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.version = version;
    self.policyId = policyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
@implementation ApigatewayDeleteBackendConfigRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    self.backendConfigId = backendConfigId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    self.backendConfigId = backendConfigId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self backendConfigId])
    {
        [result setValue:[self backendConfigId] forKey:@"backendConfigId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.backendConfigId = [dictionary objectForKey:@"backendConfigId"];
    return self;
} 

@end
@implementation ApigatewayDescribeBackendConfigRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    self.backendConfigId = backendConfigId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    self.backendConfigId = backendConfigId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self backendConfigId])
    {
        [result setValue:[self backendConfigId] forKey:@"backendConfigId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.backendConfigId = [dictionary objectForKey:@"backendConfigId"];
    return self;
} 

@end
@implementation ApigatewayCreateBackendConfigResult
-(id) initWithBackendConfigId:(NSString*) backendConfigId { 
    self.backendConfigId = backendConfigId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self backendConfigId])
    {
        [result setValue:[self backendConfigId] forKey:@"backendConfigId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.backendConfigId = [dictionary objectForKey:@"backendConfigId"];
    return self;
} 

@end
@implementation ApigatewayGetRevisionIdsRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayCheckRevisionExistRequest
-(id) initWithRegion:(NSString *)regionId
revision:(NSString*)revision
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.revision = revision;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
revision:(NSString*)revision
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.revision = revision;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.revision = [dictionary objectForKey:@"revision"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayCheckRevisionExistResult
-(id) initWithIsRepeate:(NSNumber*) isRepeate { 
    self.isRepeate = isRepeate;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self isRepeate])
    {
        [result setValue:[self isRepeate] forKey:@"isRepeate"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.isRepeate = [dictionary objectForKey:@"isRepeate"];
    return self;
} 

@end
@implementation ApigatewayDeleteRevisionResult
-(id) initWithDeleteRevision:(NSNumber*) deleteRevision { 
    self.deleteRevision = deleteRevision;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self deleteRevision])
    {
        [result setValue:[self deleteRevision] forKey:@"deleteRevision"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.deleteRevision = [dictionary objectForKey:@"deleteRevision"];
    return self;
} 

@end
@implementation ApigatewayCreateRevisionResult
-(id) initWithRevision:(NSString*) revision { 
    self.revision = revision;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.revision = [dictionary objectForKey:@"revision"];
    return self;
} 

@end
@implementation ApigatewayModifyRevisionRequest
-(id) initWithRegion:(NSString *)regionId
revisionNote:(NSString*)revisionNote
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId { 
    self.regionId = regionId;
    self.revisionNote = revisionNote;
    self.apiGroupId = apiGroupId;
    self.revisionId = revisionId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
revisionNote:(NSString*)revisionNote
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId { 
    self.regionId = regionId;
    self.version = version;
    self.revisionNote = revisionNote;
    self.apiGroupId = apiGroupId;
    self.revisionId = revisionId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self revisionNote])
    {
        [result setValue:[self revisionNote] forKey:@"revisionNote"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revisionId])
    {
        [result setValue:[self revisionId] forKey:@"revisionId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.revisionNote = [dictionary objectForKey:@"revisionNote"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revisionId = [dictionary objectForKey:@"revisionId"];
    return self;
} 

@end
@implementation ApigatewayModifyRevisionResult
-(id) initWithUpdateRevision:(NSNumber*) updateRevision { 
    self.updateRevision = updateRevision;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self updateRevision])
    {
        [result setValue:[self updateRevision] forKey:@"updateRevision"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.updateRevision = [dictionary objectForKey:@"updateRevision"];
    return self;
} 

@end
@implementation ApigatewayCreateRevisionRequest
-(id) initWithRegion:(NSString *)regionId
revision:(NSString*)revision
baseRevision:(NSString*)baseRevision
revisionNote:(NSString*)revisionNote
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.revision = revision;
    self.baseRevision = baseRevision;
    self.revisionNote = revisionNote;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
revision:(NSString*)revision
baseRevision:(NSString*)baseRevision
revisionNote:(NSString*)revisionNote
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.revision = revision;
    self.baseRevision = baseRevision;
    self.revisionNote = revisionNote;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self baseRevision])
    {
        [result setValue:[self baseRevision] forKey:@"baseRevision"];
    }
    if([self revisionNote])
    {
        [result setValue:[self revisionNote] forKey:@"revisionNote"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.revision = [dictionary objectForKey:@"revision"];
    self.baseRevision = [dictionary objectForKey:@"baseRevision"];
    self.revisionNote = [dictionary objectForKey:@"revisionNote"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayDeleteRevisionRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    self.revisionId = revisionId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    self.revisionId = revisionId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revisionId])
    {
        [result setValue:[self revisionId] forKey:@"revisionId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revisionId = [dictionary objectForKey:@"revisionId"];
    return self;
} 

@end
@implementation ApigatewayQueryKeysRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
orderBy:(NSString*)orderBy
userType:(NSString*)userType
keyId:(NSString*)keyId { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.orderBy = orderBy;
    self.userType = userType;
    self.keyId = keyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
orderBy:(NSString*)orderBy
userType:(NSString*)userType
keyId:(NSString*)keyId { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.orderBy = orderBy;
    self.userType = userType;
    self.keyId = keyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self orderBy])
    {
        [result setValue:[self orderBy] forKey:@"orderBy"];
    }
    if([self userType])
    {
        [result setValue:[self userType] forKey:@"userType"];
    }
    if([self keyId])
    {
        [result setValue:[self keyId] forKey:@"keyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.orderBy = [dictionary objectForKey:@"orderBy"];
    self.userType = [dictionary objectForKey:@"userType"];
    self.keyId = [dictionary objectForKey:@"keyId"];
    return self;
} 

@end
@implementation ApigatewayCreateKeyRequest
-(id) initWithRegion:(NSString *)regionId
keyName:(NSString*)keyName
keyDesc:(NSString*)keyDesc { 
    self.regionId = regionId;
    self.keyName = keyName;
    self.keyDesc = keyDesc;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyName:(NSString*)keyName
keyDesc:(NSString*)keyDesc { 
    self.regionId = regionId;
    self.version = version;
    self.keyName = keyName;
    self.keyDesc = keyDesc;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self keyName])
    {
        [result setValue:[self keyName] forKey:@"keyName"];
    }
    if([self keyDesc])
    {
        [result setValue:[self keyDesc] forKey:@"keyDesc"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.keyName = [dictionary objectForKey:@"keyName"];
    self.keyDesc = [dictionary objectForKey:@"keyDesc"];
    return self;
} 

@end
@implementation ApigatewayUpdateKeyRequest
-(id) initWithRegion:(NSString *)regionId
keyId:(NSString*)keyId
keyName:(NSString*)keyName
keyDesc:(NSString*)keyDesc { 
    self.regionId = regionId;
    self.keyId = keyId;
    self.keyName = keyName;
    self.keyDesc = keyDesc;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyId:(NSString*)keyId
keyName:(NSString*)keyName
keyDesc:(NSString*)keyDesc { 
    self.regionId = regionId;
    self.version = version;
    self.keyId = keyId;
    self.keyName = keyName;
    self.keyDesc = keyDesc;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self keyId])
    {
        [result setValue:[self keyId] forKey:@"keyId"];
    }
    if([self keyName])
    {
        [result setValue:[self keyName] forKey:@"keyName"];
    }
    if([self keyDesc])
    {
        [result setValue:[self keyDesc] forKey:@"keyDesc"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.keyId = [dictionary objectForKey:@"keyId"];
    self.keyName = [dictionary objectForKey:@"keyName"];
    self.keyDesc = [dictionary objectForKey:@"keyDesc"];
    return self;
} 

@end
@implementation ApigatewayQueryKeyInfoRequest
-(id) initWithRegion:(NSString *)regionId
keyId:(NSString*)keyId { 
    self.regionId = regionId;
    self.keyId = keyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyId:(NSString*)keyId { 
    self.regionId = regionId;
    self.version = version;
    self.keyId = keyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self keyId])
    {
        [result setValue:[self keyId] forKey:@"keyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.keyId = [dictionary objectForKey:@"keyId"];
    return self;
} 

@end
@implementation ApigatewayResetKeyRequest
-(id) initWithRegion:(NSString *)regionId
keyId:(NSString*)keyId { 
    self.regionId = regionId;
    self.keyId = keyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
keyId:(NSString*)keyId { 
    self.regionId = regionId;
    self.version = version;
    self.keyId = keyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self keyId])
    {
        [result setValue:[self keyId] forKey:@"keyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.keyId = [dictionary objectForKey:@"keyId"];
    return self;
} 

@end
@implementation ApigatewayCreateKeyResult
-(id) initWithAccessKey:(NSString*) accessKey
        secretKey:(NSString*)secretKey { 
    self.accessKey = accessKey;               
    self.secretKey = secretKey;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessKey])
    {
        [result setValue:[self accessKey] forKey:@"accessKey"];
    }
    if([self secretKey])
    {
        [result setValue:[self secretKey] forKey:@"secretKey"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKey = [dictionary objectForKey:@"accessKey"];
    self.secretKey = [dictionary objectForKey:@"secretKey"];
    return self;
} 

@end
@implementation ApigatewayDeleteApiGroupRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayCheckGroupNameExistResult
-(id) initWithApiGroupId:(NSString*) apiGroupId { 
    self.apiGroupId = apiGroupId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayCheckGroupNameExistRequest
-(id) initWithRegion:(NSString *)regionId
groupName:(NSString*)groupName { 
    self.regionId = regionId;
    self.groupName = groupName;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
groupName:(NSString*)groupName { 
    self.regionId = regionId;
    self.version = version;
    self.groupName = groupName;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self groupName])
    {
        [result setValue:[self groupName] forKey:@"groupName"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.groupName = [dictionary objectForKey:@"groupName"];
    return self;
} 

@end
@implementation ApigatewayModifyApiGroupAttributeRequest
-(id) initWithRegion:(NSString *)regionId
groupName:(NSString*)groupName
descriptionValue:(NSString*)descriptionValue
prefix:(NSString*)prefix
keyCheck:(NSString*)keyCheck
authType:(NSString*)authType
prefixStrip:(NSNumber*)prefixStrip
groupType:(NSString*)groupType
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.groupName = groupName;
    self.descriptionValue = descriptionValue;
    self.prefix = prefix;
    self.keyCheck = keyCheck;
    self.authType = authType;
    self.prefixStrip = prefixStrip;
    self.groupType = groupType;
    self.jdsfName = jdsfName;
    self.jdsfRegistryName = jdsfRegistryName;
    self.jdsfId = jdsfId;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
groupName:(NSString*)groupName
descriptionValue:(NSString*)descriptionValue
prefix:(NSString*)prefix
keyCheck:(NSString*)keyCheck
authType:(NSString*)authType
prefixStrip:(NSNumber*)prefixStrip
groupType:(NSString*)groupType
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.groupName = groupName;
    self.descriptionValue = descriptionValue;
    self.prefix = prefix;
    self.keyCheck = keyCheck;
    self.authType = authType;
    self.prefixStrip = prefixStrip;
    self.groupType = groupType;
    self.jdsfName = jdsfName;
    self.jdsfRegistryName = jdsfRegistryName;
    self.jdsfId = jdsfId;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self groupName])
    {
        [result setValue:[self groupName] forKey:@"groupName"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self prefix])
    {
        [result setValue:[self prefix] forKey:@"prefix"];
    }
    if([self keyCheck])
    {
        [result setValue:[self keyCheck] forKey:@"keyCheck"];
    }
    if([self authType])
    {
        [result setValue:[self authType] forKey:@"authType"];
    }
    if([self prefixStrip])
    {
        [result setValue:[self prefixStrip] forKey:@"prefixStrip"];
    }
    if([self groupType])
    {
        [result setValue:[self groupType] forKey:@"groupType"];
    }
    if([self jdsfName])
    {
        [result setValue:[self jdsfName] forKey:@"jdsfName"];
    }
    if([self jdsfRegistryName])
    {
        [result setValue:[self jdsfRegistryName] forKey:@"jdsfRegistryName"];
    }
    if([self jdsfId])
    {
        [result setValue:[self jdsfId] forKey:@"jdsfId"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.groupName = [dictionary objectForKey:@"groupName"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.prefix = [dictionary objectForKey:@"prefix"];
    self.keyCheck = [dictionary objectForKey:@"keyCheck"];
    self.authType = [dictionary objectForKey:@"authType"];
    self.prefixStrip = [dictionary objectForKey:@"prefixStrip"];
    self.groupType = [dictionary objectForKey:@"groupType"];
    self.jdsfName = [dictionary objectForKey:@"jdsfName"];
    self.jdsfRegistryName = [dictionary objectForKey:@"jdsfRegistryName"];
    self.jdsfId = [dictionary objectForKey:@"jdsfId"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayCreateApiGroupResult
-(id) initWithApiGroupId:(NSString*) apiGroupId
        revision:(NSString*)revision { 
    self.apiGroupId = apiGroupId;               
    self.revision = revision;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    return self;
} 

@end
@implementation ApigatewayDescribeApiGroupRequest
-(id) initWithRegion:(NSString *)regionId
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayCreateApiGroupRequest
-(id) initWithRegion:(NSString *)regionId
groupName:(NSString*)groupName
descriptionValue:(NSString*)descriptionValue
prefix:(NSString*)prefix
keyCheck:(NSString*)keyCheck
authType:(NSString*)authType
prefixStrip:(NSNumber*)prefixStrip
groupType:(NSString*)groupType
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId { 
    self.regionId = regionId;
    self.groupName = groupName;
    self.descriptionValue = descriptionValue;
    self.prefix = prefix;
    self.keyCheck = keyCheck;
    self.authType = authType;
    self.prefixStrip = prefixStrip;
    self.groupType = groupType;
    self.jdsfName = jdsfName;
    self.jdsfRegistryName = jdsfRegistryName;
    self.jdsfId = jdsfId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
groupName:(NSString*)groupName
descriptionValue:(NSString*)descriptionValue
prefix:(NSString*)prefix
keyCheck:(NSString*)keyCheck
authType:(NSString*)authType
prefixStrip:(NSNumber*)prefixStrip
groupType:(NSString*)groupType
jdsfName:(NSString*)jdsfName
jdsfRegistryName:(NSString*)jdsfRegistryName
jdsfId:(NSString*)jdsfId { 
    self.regionId = regionId;
    self.version = version;
    self.groupName = groupName;
    self.descriptionValue = descriptionValue;
    self.prefix = prefix;
    self.keyCheck = keyCheck;
    self.authType = authType;
    self.prefixStrip = prefixStrip;
    self.groupType = groupType;
    self.jdsfName = jdsfName;
    self.jdsfRegistryName = jdsfRegistryName;
    self.jdsfId = jdsfId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self groupName])
    {
        [result setValue:[self groupName] forKey:@"groupName"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self prefix])
    {
        [result setValue:[self prefix] forKey:@"prefix"];
    }
    if([self keyCheck])
    {
        [result setValue:[self keyCheck] forKey:@"keyCheck"];
    }
    if([self authType])
    {
        [result setValue:[self authType] forKey:@"authType"];
    }
    if([self prefixStrip])
    {
        [result setValue:[self prefixStrip] forKey:@"prefixStrip"];
    }
    if([self groupType])
    {
        [result setValue:[self groupType] forKey:@"groupType"];
    }
    if([self jdsfName])
    {
        [result setValue:[self jdsfName] forKey:@"jdsfName"];
    }
    if([self jdsfRegistryName])
    {
        [result setValue:[self jdsfRegistryName] forKey:@"jdsfRegistryName"];
    }
    if([self jdsfId])
    {
        [result setValue:[self jdsfId] forKey:@"jdsfId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.groupName = [dictionary objectForKey:@"groupName"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.prefix = [dictionary objectForKey:@"prefix"];
    self.keyCheck = [dictionary objectForKey:@"keyCheck"];
    self.authType = [dictionary objectForKey:@"authType"];
    self.prefixStrip = [dictionary objectForKey:@"prefixStrip"];
    self.groupType = [dictionary objectForKey:@"groupType"];
    self.jdsfName = [dictionary objectForKey:@"jdsfName"];
    self.jdsfRegistryName = [dictionary objectForKey:@"jdsfRegistryName"];
    self.jdsfId = [dictionary objectForKey:@"jdsfId"];
    return self;
} 

@end
@implementation ApigatewayCreateUserDomainResult
-(id) initWithDomainId:(NSString*) domainId { 
    self.domainId = domainId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self domainId])
    {
        [result setValue:[self domainId] forKey:@"domainId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainId = [dictionary objectForKey:@"domainId"];
    return self;
} 

@end
@implementation ApigatewayDeleteUserDomainRequest
-(id) initWithRegion:(NSString *)regionId
domainIds:(NSString*)domainIds
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.domainIds = domainIds;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domainIds:(NSString*)domainIds
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.domainIds = domainIds;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domainIds])
    {
        [result setValue:[self domainIds] forKey:@"domainIds"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainIds = [dictionary objectForKey:@"domainIds"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayQueryUserDomainsRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
orderBy:(NSString*)orderBy
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.orderBy = orderBy;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
orderBy:(NSString*)orderBy
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.orderBy = orderBy;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self orderBy])
    {
        [result setValue:[self orderBy] forKey:@"orderBy"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.orderBy = [dictionary objectForKey:@"orderBy"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayCreateUserDomainRequest
-(id) initWithRegion:(NSString *)regionId
domain:(NSString*)domain
protocol:(NSString*)protocol
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.domain = domain;
    self.protocol = protocol;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
domain:(NSString*)domain
protocol:(NSString*)protocol
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.domain = domain;
    self.protocol = protocol;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self domain])
    {
        [result setValue:[self domain] forKey:@"domain"];
    }
    if([self protocol])
    {
        [result setValue:[self protocol] forKey:@"protocol"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domain = [dictionary objectForKey:@"domain"];
    self.protocol = [dictionary objectForKey:@"protocol"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayQueryAccessKeyRequest
-(id) initWithRegion:(NSString *)regionId
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.accessKeyId = accessKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.accessKeyId = accessKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayQueryKeyGroupListRequest
-(id) initWithRegion:(NSString *)regionId
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.accessKeyId = accessKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.accessKeyId = accessKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayDeleteAccessKeyRequest
-(id) initWithRegion:(NSString *)regionId
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.accessKeyId = accessKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.accessKeyId = accessKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayBindGroupKeyRequest
-(id) initWithRegion:(NSString *)regionId
deploymentIds:(NSString*)deploymentIds
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.deploymentIds = deploymentIds;
    self.accessKeyId = accessKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deploymentIds:(NSString*)deploymentIds
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.deploymentIds = deploymentIds;
    self.accessKeyId = accessKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self deploymentIds])
    {
        [result setValue:[self deploymentIds] forKey:@"deploymentIds"];
    }
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.deploymentIds = [dictionary objectForKey:@"deploymentIds"];
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayCreateAccessKeyResult
-(id) initWithAccessKeyId:(NSString*) accessKeyId { 
    self.accessKeyId = accessKeyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayDeleteAccessKeyResult
-(id) initWithAccessKeyId:(NSString*) accessKeyId { 
    self.accessKeyId = accessKeyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayCheckKeyExistRequest
-(id) initWithRegion:(NSString *)regionId
accessKey:(NSString*)accessKey
accessKeyType:(NSString*)accessKeyType { 
    self.regionId = regionId;
    self.accessKey = accessKey;
    self.accessKeyType = accessKeyType;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKey:(NSString*)accessKey
accessKeyType:(NSString*)accessKeyType { 
    self.regionId = regionId;
    self.version = version;
    self.accessKey = accessKey;
    self.accessKeyType = accessKeyType;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessKey])
    {
        [result setValue:[self accessKey] forKey:@"accessKey"];
    }
    if([self accessKeyType])
    {
        [result setValue:[self accessKeyType] forKey:@"accessKeyType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKey = [dictionary objectForKey:@"accessKey"];
    self.accessKeyType = [dictionary objectForKey:@"accessKeyType"];
    return self;
} 

@end
@implementation ApigatewayUpdateAccessKeyRequest
-(id) initWithRegion:(NSString *)regionId
descriptionValue:(NSString*)descriptionValue
accessKeyType:(NSString*)accessKeyType
accessKey:(NSString*)accessKey
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.descriptionValue = descriptionValue;
    self.accessKeyType = accessKeyType;
    self.accessKey = accessKey;
    self.accessKeyId = accessKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
descriptionValue:(NSString*)descriptionValue
accessKeyType:(NSString*)accessKeyType
accessKey:(NSString*)accessKey
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.descriptionValue = descriptionValue;
    self.accessKeyType = accessKeyType;
    self.accessKey = accessKey;
    self.accessKeyId = accessKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self accessKeyType])
    {
        [result setValue:[self accessKeyType] forKey:@"accessKeyType"];
    }
    if([self accessKey])
    {
        [result setValue:[self accessKey] forKey:@"accessKey"];
    }
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.accessKeyType = [dictionary objectForKey:@"accessKeyType"];
    self.accessKey = [dictionary objectForKey:@"accessKey"];
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayQueryBindGroupKeyRequest
-(id) initWithRegion:(NSString *)regionId
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.accessKeyId = accessKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKeyId:(NSString*)accessKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.accessKeyId = accessKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayCreateAccessKeyRequest
-(id) initWithRegion:(NSString *)regionId
descriptionValue:(NSString*)descriptionValue
accessKeyType:(NSString*)accessKeyType
accessKey:(NSString*)accessKey { 
    self.regionId = regionId;
    self.descriptionValue = descriptionValue;
    self.accessKeyType = accessKeyType;
    self.accessKey = accessKey;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
descriptionValue:(NSString*)descriptionValue
accessKeyType:(NSString*)accessKeyType
accessKey:(NSString*)accessKey { 
    self.regionId = regionId;
    self.version = version;
    self.descriptionValue = descriptionValue;
    self.accessKeyType = accessKeyType;
    self.accessKey = accessKey;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self accessKeyType])
    {
        [result setValue:[self accessKeyType] forKey:@"accessKeyType"];
    }
    if([self accessKey])
    {
        [result setValue:[self accessKey] forKey:@"accessKey"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.accessKeyType = [dictionary objectForKey:@"accessKeyType"];
    self.accessKey = [dictionary objectForKey:@"accessKey"];
    return self;
} 

@end
@implementation ApigatewayUpdateAccessKeyResult
-(id) initWithAccessKeyId:(NSString*) accessKeyId { 
    self.accessKeyId = accessKeyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessKeyId])
    {
        [result setValue:[self accessKeyId] forKey:@"accessKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKeyId = [dictionary objectForKey:@"accessKeyId"];
    return self;
} 

@end
@implementation ApigatewayDeleteAccessAuthRequest
-(id) initWithRegion:(NSString *)regionId
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.accessAuthId = accessAuthId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.version = version;
    self.accessAuthId = accessAuthId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
@implementation ApigatewayQueryAuthGroupListRequest
-(id) initWithRegion:(NSString *)regionId
authUserType:(NSString*)authUserType { 
    self.regionId = regionId;
    self.authUserType = authUserType;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
authUserType:(NSString*)authUserType { 
    self.regionId = regionId;
    self.version = version;
    self.authUserType = authUserType;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self authUserType])
    {
        [result setValue:[self authUserType] forKey:@"authUserType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.authUserType = [dictionary objectForKey:@"authUserType"];
    return self;
} 

@end
@implementation ApigatewayCheckAuthExistResult
-(id) initWithAccessAuthId:(NSString*) accessAuthId { 
    self.accessAuthId = accessAuthId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
@implementation ApigatewayQueryAccessAuthRequest
-(id) initWithRegion:(NSString *)regionId
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.accessAuthId = accessAuthId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.version = version;
    self.accessAuthId = accessAuthId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
@implementation ApigatewayUpdateAccessAuthResult
-(id) initWithAccessAuthId:(NSString*) accessAuthId { 
    self.accessAuthId = accessAuthId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
@implementation ApigatewayCheckAuthExistRequest
-(id) initWithRegion:(NSString *)regionId
accessKey:(NSString*)accessKey
authUserType:(NSString*)authUserType { 
    self.regionId = regionId;
    self.accessKey = accessKey;
    self.authUserType = authUserType;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessKey:(NSString*)accessKey
authUserType:(NSString*)authUserType { 
    self.regionId = regionId;
    self.version = version;
    self.accessKey = accessKey;
    self.authUserType = authUserType;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessKey])
    {
        [result setValue:[self accessKey] forKey:@"accessKey"];
    }
    if([self authUserType])
    {
        [result setValue:[self authUserType] forKey:@"authUserType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKey = [dictionary objectForKey:@"accessKey"];
    self.authUserType = [dictionary objectForKey:@"authUserType"];
    return self;
} 

@end
@implementation ApigatewayCreateAccessAuthResult
-(id) initWithAccessAuthId:(NSString*) accessAuthId { 
    self.accessAuthId = accessAuthId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
@implementation ApigatewayQueryBindGroupAuthRequest
-(id) initWithRegion:(NSString *)regionId
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.accessAuthId = accessAuthId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.version = version;
    self.accessAuthId = accessAuthId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
@implementation ApigatewayBindGroupAuthRequest
-(id) initWithRegion:(NSString *)regionId
deploymentIds:(NSString*)deploymentIds
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.deploymentIds = deploymentIds;
    self.accessAuthId = accessAuthId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
deploymentIds:(NSString*)deploymentIds
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.version = version;
    self.deploymentIds = deploymentIds;
    self.accessAuthId = accessAuthId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self deploymentIds])
    {
        [result setValue:[self deploymentIds] forKey:@"deploymentIds"];
    }
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.deploymentIds = [dictionary objectForKey:@"deploymentIds"];
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
@implementation ApigatewayDeleteAccessAuthResult
-(id) initWithAccessAuthId:(NSString*) accessAuthId { 
    self.accessAuthId = accessAuthId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
@implementation ApigatewayCheckPinRequest
-(id) initWithRegion:(NSString *)regionId
pin:(NSString*)pin { 
    self.regionId = regionId;
    self.pin = pin;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pin:(NSString*)pin { 
    self.regionId = regionId;
    self.version = version;
    self.pin = pin;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pin])
    {
        [result setValue:[self pin] forKey:@"pin"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pin = [dictionary objectForKey:@"pin"];
    return self;
} 

@end
@implementation ApigatewayUpdateSubscriptionKeyResult
-(id) initWithSubscriptionKeyId:(NSString*) subscriptionKeyId { 
    self.subscriptionKeyId = subscriptionKeyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self subscriptionKeyId])
    {
        [result setValue:[self subscriptionKeyId] forKey:@"subscriptionKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.subscriptionKeyId = [dictionary objectForKey:@"subscriptionKeyId"];
    return self;
} 

@end
@implementation ApigatewayQuerySubscriptionKeyRequest
-(id) initWithRegion:(NSString *)regionId
subscriptionKeyId:(NSString*)subscriptionKeyId { 
    self.regionId = regionId;
    self.subscriptionKeyId = subscriptionKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
subscriptionKeyId:(NSString*)subscriptionKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.subscriptionKeyId = subscriptionKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self subscriptionKeyId])
    {
        [result setValue:[self subscriptionKeyId] forKey:@"subscriptionKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.subscriptionKeyId = [dictionary objectForKey:@"subscriptionKeyId"];
    return self;
} 

@end
@implementation ApigatewayCreateSubscriptionKeyRequest
-(id) initWithRegion:(NSString *)regionId
descriptionValue:(NSString*)descriptionValue
name:(NSString*)name { 
    self.regionId = regionId;
    self.descriptionValue = descriptionValue;
    self.name = name;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
descriptionValue:(NSString*)descriptionValue
name:(NSString*)name { 
    self.regionId = regionId;
    self.version = version;
    self.descriptionValue = descriptionValue;
    self.name = name;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.name = [dictionary objectForKey:@"name"];
    return self;
} 

@end
@implementation ApigatewayDeleteSubscriptionKeyResult
-(id) initWithSubscriptionKeyId:(NSString*) subscriptionKeyId { 
    self.subscriptionKeyId = subscriptionKeyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self subscriptionKeyId])
    {
        [result setValue:[self subscriptionKeyId] forKey:@"subscriptionKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.subscriptionKeyId = [dictionary objectForKey:@"subscriptionKeyId"];
    return self;
} 

@end
@implementation ApigatewayDeleteSubscriptionKeyRequest
-(id) initWithRegion:(NSString *)regionId
subscriptionKeyId:(NSString*)subscriptionKeyId { 
    self.regionId = regionId;
    self.subscriptionKeyId = subscriptionKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
subscriptionKeyId:(NSString*)subscriptionKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.subscriptionKeyId = subscriptionKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self subscriptionKeyId])
    {
        [result setValue:[self subscriptionKeyId] forKey:@"subscriptionKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.subscriptionKeyId = [dictionary objectForKey:@"subscriptionKeyId"];
    return self;
} 

@end
@implementation ApigatewayUpdateSubscriptionKeyRequest
-(id) initWithRegion:(NSString *)regionId
descriptionValue:(NSString*)descriptionValue
name:(NSString*)name
subscriptionKeyId:(NSString*)subscriptionKeyId { 
    self.regionId = regionId;
    self.descriptionValue = descriptionValue;
    self.name = name;
    self.subscriptionKeyId = subscriptionKeyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
descriptionValue:(NSString*)descriptionValue
name:(NSString*)name
subscriptionKeyId:(NSString*)subscriptionKeyId { 
    self.regionId = regionId;
    self.version = version;
    self.descriptionValue = descriptionValue;
    self.name = name;
    self.subscriptionKeyId = subscriptionKeyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self subscriptionKeyId])
    {
        [result setValue:[self subscriptionKeyId] forKey:@"subscriptionKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.name = [dictionary objectForKey:@"name"];
    self.subscriptionKeyId = [dictionary objectForKey:@"subscriptionKeyId"];
    return self;
} 

@end
@implementation ApigatewayCreateSubscriptionKeyResult
-(id) initWithSubscriptionKeyId:(NSString*) subscriptionKeyId { 
    self.subscriptionKeyId = subscriptionKeyId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self subscriptionKeyId])
    {
        [result setValue:[self subscriptionKeyId] forKey:@"subscriptionKeyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.subscriptionKeyId = [dictionary objectForKey:@"subscriptionKeyId"];
    return self;
} 

@end
@implementation ApigatewayUpdateApiByNameResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
@implementation ApigatewayQueryApiRequest
-(id) initWithRegion:(NSString *)regionId
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId { 
    self.regionId = regionId;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiId = apiId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId { 
    self.regionId = regionId;
    self.version = version;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiId = apiId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self apiId])
    {
        [result setValue:[self apiId] forKey:@"apiId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    self.apiId = [dictionary objectForKey:@"apiId"];
    return self;
} 

@end
@implementation ApigatewayUpdateApiByNameRequest
-(id) initWithRegion:(NSString *)regionId
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiName:(NSString*)apiName { 
    self.regionId = regionId;
    self.api = api;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiName = apiName;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiName:(NSString*)apiName { 
    self.regionId = regionId;
    self.version = version;
    self.api = api;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiName = apiName;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self api])
    {
        [result setValue:[[self api] dictionary]forKey:@"api"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self apiName])
    {
        [result setValue:[self apiName] forKey:@"apiName"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.api = [[CreateApi alloc]initWithDic:[dictionary objectForKey:@"api"]];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    self.apiName = [dictionary objectForKey:@"apiName"];
    return self;
} 

@end
@implementation ApigatewayQueryApiResult
-(id) initWithApi:(Api*) api { 
    self.api = api;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self api])
    {
        [result setValue:[[self api] dictionary]forKey:@"api"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.api = [[Api alloc]initWithDic:[dictionary objectForKey:@"api"]];
    return self;
} 

@end
  
@implementation ApigatewayUpdateApiResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayUpdateApiResult* result = [[ApigatewayUpdateApiResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayUpdateApiResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayUpdateApiByNameResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayUpdateApiByNameResult* result = [[ApigatewayUpdateApiByNameResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayUpdateApiByNameResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayQueryApiResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryApiResult* result = [[ApigatewayQueryApiResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryApiResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayUpdateApiRequest
-(id) initWithRegion:(NSString *)regionId
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId { 
    self.regionId = regionId;
    self.api = api;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiId = apiId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision
apiId:(NSString*)apiId { 
    self.regionId = regionId;
    self.version = version;
    self.api = api;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    self.apiId = apiId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self api])
    {
        [result setValue:[[self api] dictionary]forKey:@"api"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    if([self apiId])
    {
        [result setValue:[self apiId] forKey:@"apiId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.api = [[CreateApi alloc]initWithDic:[dictionary objectForKey:@"api"]];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    self.apiId = [dictionary objectForKey:@"apiId"];
    return self;
} 

@end
@implementation ApigatewayQueryApisResult
-(id) initWithApis:(NSArray<Api*>*) apis
        totalCount:(NSNumber*)totalCount { 
    self.apis = apis;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apis])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self apis] count]; i++) {
            Api* item = [[self apis] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"apis"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* apisArray = [dictionary objectForKey:@"apis"];
    if(apisArray&&![apisArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [apisArray count];i++)
        {
        Api* item = [[Api alloc]initWithDic:[apisArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.apis = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
  
@implementation ApigatewayQueryApisResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryApisResult* result = [[ApigatewayQueryApisResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryApisResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateApisResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateApisResult* result = [[ApigatewayCreateApisResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateApisResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDeleteApiByNameResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayDeleteApiByNameResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteApiByNameResult* result = [[ApigatewayDeleteApiByNameResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteApiByNameResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCheckApiNameExistResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCheckApiNameExistResult* result = [[ApigatewayCheckApiNameExistResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCheckApiNameExistResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDeleteApiResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayDeleteApiResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteApiResult* result = [[ApigatewayDeleteApiResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteApiResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayCreateApisRequest
-(id) initWithRegion:(NSString *)regionId
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision { 
    self.regionId = regionId;
    self.api = api;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
api:(CreateApi*)api
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision { 
    self.regionId = regionId;
    self.version = version;
    self.api = api;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self api])
    {
        [result setValue:[[self api] dictionary]forKey:@"api"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.api = [[CreateApi alloc]initWithDic:[dictionary objectForKey:@"api"]];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    return self;
} 

@end
@implementation ApigatewayQueryApisRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revision:(NSString*)revision { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    self.revision = revision;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revision])
    {
        [result setValue:[self revision] forKey:@"revision"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revision = [dictionary objectForKey:@"revision"];
    return self;
} 

@end
@implementation ApigatewayDescribeDeploymentsResult
-(id) initWithDeployments:(NSArray<Deployment*>*) deployments { 
    self.deployments = deployments;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self deployments])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self deployments] count]; i++) {
            Deployment* item = [[self deployments] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"deployments"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* deploymentsArray = [dictionary objectForKey:@"deployments"];
    if(deploymentsArray&&![deploymentsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [deploymentsArray count];i++)
        {
        Deployment* item = [[Deployment alloc]initWithDic:[deploymentsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.deployments = propertyArray;
    }
    return self;
} 

@end
@implementation ApigatewayDeployResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayDescribeDeploymentResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDescribeDeploymentResult* result = [[ApigatewayDescribeDeploymentResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDescribeDeploymentResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayBatchOfflineResult
-(id) initWithSuccessCount:(NSNumber*) successCount
        failed:(NSArray<ErrorItem*>*)failed { 
    self.successCount = successCount;               
    self.failed = failed;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self successCount])
    {
        [result setValue:[self successCount] forKey:@"successCount"];
    }
    if([self failed])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self failed] count]; i++) {
            ErrorItem* item = [[self failed] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"failed"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.successCount = [dictionary objectForKey:@"successCount"];
    NSArray* failedArray = [dictionary objectForKey:@"failed"];
    if(failedArray&&![failedArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [failedArray count];i++)
        {
        ErrorItem* item = [[ErrorItem alloc]initWithDic:[failedArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.failed = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayBatchOfflineResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayBatchOfflineResult* result = [[ApigatewayBatchOfflineResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayBatchOfflineResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayOfflineResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayDescribeDeploymentsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDescribeDeploymentsResult* result = [[ApigatewayDescribeDeploymentsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDescribeDeploymentsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayOfflineResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayOfflineResult* result = [[ApigatewayOfflineResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayOfflineResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayDeployResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeployResult* result = [[ApigatewayDeployResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeployResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDescribeDeploymentsRequest
-(id) initWithRegion:(NSString *)regionId
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
@implementation ApigatewayQueryRateLimitPoliciesRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    return self;
} 

@end
@implementation ApigatewayQueryBindGroupPolicyResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
@implementation ApigatewayUpdateRateLimitPolicyRequest
-(id) initWithRegion:(NSString *)regionId
rateLimitPolicyView:(RateLimitPolicyView*)rateLimitPolicyView
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.rateLimitPolicyView = rateLimitPolicyView;
    self.policyId = policyId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
rateLimitPolicyView:(RateLimitPolicyView*)rateLimitPolicyView
policyId:(NSString*)policyId { 
    self.regionId = regionId;
    self.version = version;
    self.rateLimitPolicyView = rateLimitPolicyView;
    self.policyId = policyId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self rateLimitPolicyView])
    {
        [result setValue:[[self rateLimitPolicyView] dictionary]forKey:@"rateLimitPolicyView"];
    }
    if([self policyId])
    {
        [result setValue:[self policyId] forKey:@"policyId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.rateLimitPolicyView = [[RateLimitPolicyView alloc]initWithDic:[dictionary objectForKey:@"rateLimitPolicyView"]];
    self.policyId = [dictionary objectForKey:@"policyId"];
    return self;
} 

@end
  
@implementation ApigatewayQueryBindGroupPolicyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryBindGroupPolicyResult* result = [[ApigatewayQueryBindGroupPolicyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryBindGroupPolicyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayCreateRateLimitPolicyRequest
-(id) initWithRegion:(NSString *)regionId
rateLimitPolicyView:(RateLimitPolicyView*)rateLimitPolicyView { 
    self.regionId = regionId;
    self.rateLimitPolicyView = rateLimitPolicyView;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
rateLimitPolicyView:(RateLimitPolicyView*)rateLimitPolicyView { 
    self.regionId = regionId;
    self.version = version;
    self.rateLimitPolicyView = rateLimitPolicyView;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self rateLimitPolicyView])
    {
        [result setValue:[[self rateLimitPolicyView] dictionary]forKey:@"rateLimitPolicyView"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.rateLimitPolicyView = [[RateLimitPolicyView alloc]initWithDic:[dictionary objectForKey:@"rateLimitPolicyView"]];
    return self;
} 

@end
@implementation ApigatewayQueryRateLimitPoliciesResult
-(id) initWithRateLimitPolicys:(NSArray<RateLimitPolicy*>*) rateLimitPolicys
        totalCount:(NSNumber*)totalCount { 
    self.rateLimitPolicys = rateLimitPolicys;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self rateLimitPolicys])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self rateLimitPolicys] count]; i++) {
            RateLimitPolicy* item = [[self rateLimitPolicys] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"rateLimitPolicys"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* rateLimitPolicysArray = [dictionary objectForKey:@"rateLimitPolicys"];
    if(rateLimitPolicysArray&&![rateLimitPolicysArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [rateLimitPolicysArray count];i++)
        {
        RateLimitPolicy* item = [[RateLimitPolicy alloc]initWithDic:[rateLimitPolicysArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.rateLimitPolicys = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
@implementation ApigatewayQueryPolicyGroupListResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayQueryPolicyGroupListResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryPolicyGroupListResult* result = [[ApigatewayQueryPolicyGroupListResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryPolicyGroupListResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayBindGroupPolicyResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayBindGroupPolicyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayBindGroupPolicyResult* result = [[ApigatewayBindGroupPolicyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayBindGroupPolicyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryRateLimitPolicyResult
-(id) initWithRateLimitPolicy:(RateLimitPolicy*) rateLimitPolicy { 
    self.rateLimitPolicy = rateLimitPolicy;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self rateLimitPolicy])
    {
        [result setValue:[[self rateLimitPolicy] dictionary]forKey:@"rateLimitPolicy"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.rateLimitPolicy = [[RateLimitPolicy alloc]initWithDic:[dictionary objectForKey:@"rateLimitPolicy"]];
    return self;
} 

@end
  
@implementation ApigatewayCheckPolicyNameResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCheckPolicyNameResult* result = [[ApigatewayCheckPolicyNameResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCheckPolicyNameResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateRateLimitPolicyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateRateLimitPolicyResult* result = [[ApigatewayCreateRateLimitPolicyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateRateLimitPolicyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayQueryRateLimitPolicyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryRateLimitPolicyResult* result = [[ApigatewayQueryRateLimitPolicyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryRateLimitPolicyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayUpdateRateLimitPolicyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayUpdateRateLimitPolicyResult* result = [[ApigatewayUpdateRateLimitPolicyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayUpdateRateLimitPolicyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayQueryRateLimitPoliciesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryRateLimitPoliciesResult* result = [[ApigatewayQueryRateLimitPoliciesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryRateLimitPoliciesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayDeleteRateLimitPolicyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteRateLimitPolicyResult* result = [[ApigatewayDeleteRateLimitPolicyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteRateLimitPolicyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateBackendConfigResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateBackendConfigResult* result = [[ApigatewayCreateBackendConfigResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateBackendConfigResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDescribeBackendConfigResult
-(id) initWithBackendConfig:(BackendConfig*) backendConfig { 
    self.backendConfig = backendConfig;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self backendConfig])
    {
        [result setValue:[[self backendConfig] dictionary]forKey:@"backendConfig"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.backendConfig = [[BackendConfig alloc]initWithDic:[dictionary objectForKey:@"backendConfig"]];
    return self;
} 

@end
@implementation ApigatewayDescribeBackendConfigsResult
-(id) initWithBackendConfigs:(NSArray<BackendConfig*>*) backendConfigs
        totalCount:(NSNumber*)totalCount { 
    self.backendConfigs = backendConfigs;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self backendConfigs])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self backendConfigs] count]; i++) {
            BackendConfig* item = [[self backendConfigs] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"backendConfigs"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* backendConfigsArray = [dictionary objectForKey:@"backendConfigs"];
    if(backendConfigsArray&&![backendConfigsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [backendConfigsArray count];i++)
        {
        BackendConfig* item = [[BackendConfig alloc]initWithDic:[backendConfigsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.backendConfigs = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
  
@implementation ApigatewayDescribeBackendConfigsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDescribeBackendConfigsResult* result = [[ApigatewayDescribeBackendConfigsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDescribeBackendConfigsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayUpdateBackendConfigResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayUpdateBackendConfigResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayUpdateBackendConfigResult* result = [[ApigatewayUpdateBackendConfigResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayUpdateBackendConfigResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayUpdateBackendConfigRequest
-(id) initWithRegion:(NSString *)regionId
baseGroupId:(NSString*)baseGroupId
environment:(NSString*)environment
backendUrl:(NSString*)backendUrl
backendServiceType:(NSString*)backendServiceType
headerParams:(NSArray<SimpleParameter*>*)headerParams
queryParams:(NSArray<SimpleParameter*>*)queryParams
descriptionValue:(NSString*)descriptionValue
createTime:(NSNumber*)createTime
sort:(NSNumber*)sort
userSort:(NSNumber*)userSort
jdsfId:(NSString*)jdsfId
jdsfParam:(NSString*)jdsfParam
jdsfRegion:(NSString*)jdsfRegion
jdsfPin:(NSString*)jdsfPin
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId { 
    self.regionId = regionId;
    self.baseGroupId = baseGroupId;
    self.environment = environment;
    self.backendUrl = backendUrl;
    self.backendServiceType = backendServiceType;
    self.headerParams = headerParams;
    self.queryParams = queryParams;
    self.descriptionValue = descriptionValue;
    self.createTime = createTime;
    self.sort = sort;
    self.userSort = userSort;
    self.jdsfId = jdsfId;
    self.jdsfParam = jdsfParam;
    self.jdsfRegion = jdsfRegion;
    self.jdsfPin = jdsfPin;
    self.apiGroupId = apiGroupId;
    self.backendConfigId = backendConfigId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
baseGroupId:(NSString*)baseGroupId
environment:(NSString*)environment
backendUrl:(NSString*)backendUrl
backendServiceType:(NSString*)backendServiceType
headerParams:(NSArray<SimpleParameter*>*)headerParams
queryParams:(NSArray<SimpleParameter*>*)queryParams
descriptionValue:(NSString*)descriptionValue
createTime:(NSNumber*)createTime
sort:(NSNumber*)sort
userSort:(NSNumber*)userSort
jdsfId:(NSString*)jdsfId
jdsfParam:(NSString*)jdsfParam
jdsfRegion:(NSString*)jdsfRegion
jdsfPin:(NSString*)jdsfPin
apiGroupId:(NSString*)apiGroupId
backendConfigId:(NSString*)backendConfigId { 
    self.regionId = regionId;
    self.version = version;
    self.baseGroupId = baseGroupId;
    self.environment = environment;
    self.backendUrl = backendUrl;
    self.backendServiceType = backendServiceType;
    self.headerParams = headerParams;
    self.queryParams = queryParams;
    self.descriptionValue = descriptionValue;
    self.createTime = createTime;
    self.sort = sort;
    self.userSort = userSort;
    self.jdsfId = jdsfId;
    self.jdsfParam = jdsfParam;
    self.jdsfRegion = jdsfRegion;
    self.jdsfPin = jdsfPin;
    self.apiGroupId = apiGroupId;
    self.backendConfigId = backendConfigId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self baseGroupId])
    {
        [result setValue:[self baseGroupId] forKey:@"baseGroupId"];
    }
    if([self environment])
    {
        [result setValue:[self environment] forKey:@"environment"];
    }
    if([self backendUrl])
    {
        [result setValue:[self backendUrl] forKey:@"backendUrl"];
    }
    if([self backendServiceType])
    {
        [result setValue:[self backendServiceType] forKey:@"backendServiceType"];
    }
    if([self headerParams])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self headerParams] count]; i++) {
            SimpleParameter* item = [[self headerParams] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"headerParams"];
    }
    if([self queryParams])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self queryParams] count]; i++) {
            SimpleParameter* item = [[self queryParams] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"queryParams"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self sort])
    {
        [result setValue:[self sort] forKey:@"sort"];
    }
    if([self userSort])
    {
        [result setValue:[self userSort] forKey:@"userSort"];
    }
    if([self jdsfId])
    {
        [result setValue:[self jdsfId] forKey:@"jdsfId"];
    }
    if([self jdsfParam])
    {
        [result setValue:[self jdsfParam] forKey:@"jdsfParam"];
    }
    if([self jdsfRegion])
    {
        [result setValue:[self jdsfRegion] forKey:@"jdsfRegion"];
    }
    if([self jdsfPin])
    {
        [result setValue:[self jdsfPin] forKey:@"jdsfPin"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self backendConfigId])
    {
        [result setValue:[self backendConfigId] forKey:@"backendConfigId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.baseGroupId = [dictionary objectForKey:@"baseGroupId"];
    self.environment = [dictionary objectForKey:@"environment"];
    self.backendUrl = [dictionary objectForKey:@"backendUrl"];
    self.backendServiceType = [dictionary objectForKey:@"backendServiceType"];
    NSArray* headerParamsArray = [dictionary objectForKey:@"headerParams"];
    if(headerParamsArray&&![headerParamsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [headerParamsArray count];i++)
        {
        SimpleParameter* item = [[SimpleParameter alloc]initWithDic:[headerParamsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.headerParams = propertyArray;
    }
    NSArray* queryParamsArray = [dictionary objectForKey:@"queryParams"];
    if(queryParamsArray&&![queryParamsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [queryParamsArray count];i++)
        {
        SimpleParameter* item = [[SimpleParameter alloc]initWithDic:[queryParamsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.queryParams = propertyArray;
    }
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.sort = [dictionary objectForKey:@"sort"];
    self.userSort = [dictionary objectForKey:@"userSort"];
    self.jdsfId = [dictionary objectForKey:@"jdsfId"];
    self.jdsfParam = [dictionary objectForKey:@"jdsfParam"];
    self.jdsfRegion = [dictionary objectForKey:@"jdsfRegion"];
    self.jdsfPin = [dictionary objectForKey:@"jdsfPin"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.backendConfigId = [dictionary objectForKey:@"backendConfigId"];
    return self;
} 

@end
@implementation ApigatewayDescribeBackendConfigsRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
environment:(NSString*)environment { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    self.environment = environment;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
environment:(NSString*)environment { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    self.environment = environment;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self environment])
    {
        [result setValue:[self environment] forKey:@"environment"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.environment = [dictionary objectForKey:@"environment"];
    return self;
} 

@end
@implementation ApigatewayCreateBackendConfigRequest
-(id) initWithRegion:(NSString *)regionId
backendConfigId:(NSString*)backendConfigId
baseGroupId:(NSString*)baseGroupId
environment:(NSString*)environment
backendUrl:(NSString*)backendUrl
backendServiceType:(NSString*)backendServiceType
headerParams:(NSArray<SimpleParameter*>*)headerParams
queryParams:(NSArray<SimpleParameter*>*)queryParams
descriptionValue:(NSString*)descriptionValue
createTime:(NSNumber*)createTime
sort:(NSNumber*)sort
userSort:(NSNumber*)userSort
jdsfId:(NSString*)jdsfId
jdsfParam:(NSString*)jdsfParam
jdsfRegion:(NSString*)jdsfRegion
jdsfPin:(NSString*)jdsfPin
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.backendConfigId = backendConfigId;
    self.baseGroupId = baseGroupId;
    self.environment = environment;
    self.backendUrl = backendUrl;
    self.backendServiceType = backendServiceType;
    self.headerParams = headerParams;
    self.queryParams = queryParams;
    self.descriptionValue = descriptionValue;
    self.createTime = createTime;
    self.sort = sort;
    self.userSort = userSort;
    self.jdsfId = jdsfId;
    self.jdsfParam = jdsfParam;
    self.jdsfRegion = jdsfRegion;
    self.jdsfPin = jdsfPin;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
backendConfigId:(NSString*)backendConfigId
baseGroupId:(NSString*)baseGroupId
environment:(NSString*)environment
backendUrl:(NSString*)backendUrl
backendServiceType:(NSString*)backendServiceType
headerParams:(NSArray<SimpleParameter*>*)headerParams
queryParams:(NSArray<SimpleParameter*>*)queryParams
descriptionValue:(NSString*)descriptionValue
createTime:(NSNumber*)createTime
sort:(NSNumber*)sort
userSort:(NSNumber*)userSort
jdsfId:(NSString*)jdsfId
jdsfParam:(NSString*)jdsfParam
jdsfRegion:(NSString*)jdsfRegion
jdsfPin:(NSString*)jdsfPin
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.backendConfigId = backendConfigId;
    self.baseGroupId = baseGroupId;
    self.environment = environment;
    self.backendUrl = backendUrl;
    self.backendServiceType = backendServiceType;
    self.headerParams = headerParams;
    self.queryParams = queryParams;
    self.descriptionValue = descriptionValue;
    self.createTime = createTime;
    self.sort = sort;
    self.userSort = userSort;
    self.jdsfId = jdsfId;
    self.jdsfParam = jdsfParam;
    self.jdsfRegion = jdsfRegion;
    self.jdsfPin = jdsfPin;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self backendConfigId])
    {
        [result setValue:[self backendConfigId] forKey:@"backendConfigId"];
    }
    if([self baseGroupId])
    {
        [result setValue:[self baseGroupId] forKey:@"baseGroupId"];
    }
    if([self environment])
    {
        [result setValue:[self environment] forKey:@"environment"];
    }
    if([self backendUrl])
    {
        [result setValue:[self backendUrl] forKey:@"backendUrl"];
    }
    if([self backendServiceType])
    {
        [result setValue:[self backendServiceType] forKey:@"backendServiceType"];
    }
    if([self headerParams])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self headerParams] count]; i++) {
            SimpleParameter* item = [[self headerParams] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"headerParams"];
    }
    if([self queryParams])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self queryParams] count]; i++) {
            SimpleParameter* item = [[self queryParams] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"queryParams"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self sort])
    {
        [result setValue:[self sort] forKey:@"sort"];
    }
    if([self userSort])
    {
        [result setValue:[self userSort] forKey:@"userSort"];
    }
    if([self jdsfId])
    {
        [result setValue:[self jdsfId] forKey:@"jdsfId"];
    }
    if([self jdsfParam])
    {
        [result setValue:[self jdsfParam] forKey:@"jdsfParam"];
    }
    if([self jdsfRegion])
    {
        [result setValue:[self jdsfRegion] forKey:@"jdsfRegion"];
    }
    if([self jdsfPin])
    {
        [result setValue:[self jdsfPin] forKey:@"jdsfPin"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.backendConfigId = [dictionary objectForKey:@"backendConfigId"];
    self.baseGroupId = [dictionary objectForKey:@"baseGroupId"];
    self.environment = [dictionary objectForKey:@"environment"];
    self.backendUrl = [dictionary objectForKey:@"backendUrl"];
    self.backendServiceType = [dictionary objectForKey:@"backendServiceType"];
    NSArray* headerParamsArray = [dictionary objectForKey:@"headerParams"];
    if(headerParamsArray&&![headerParamsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [headerParamsArray count];i++)
        {
        SimpleParameter* item = [[SimpleParameter alloc]initWithDic:[headerParamsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.headerParams = propertyArray;
    }
    NSArray* queryParamsArray = [dictionary objectForKey:@"queryParams"];
    if(queryParamsArray&&![queryParamsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [queryParamsArray count];i++)
        {
        SimpleParameter* item = [[SimpleParameter alloc]initWithDic:[queryParamsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.queryParams = propertyArray;
    }
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.sort = [dictionary objectForKey:@"sort"];
    self.userSort = [dictionary objectForKey:@"userSort"];
    self.jdsfId = [dictionary objectForKey:@"jdsfId"];
    self.jdsfParam = [dictionary objectForKey:@"jdsfParam"];
    self.jdsfRegion = [dictionary objectForKey:@"jdsfRegion"];
    self.jdsfPin = [dictionary objectForKey:@"jdsfPin"];
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
  
@implementation ApigatewayDescribeBackendConfigResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDescribeBackendConfigResult* result = [[ApigatewayDescribeBackendConfigResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDescribeBackendConfigResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDeleteBackendConfigResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayDeleteBackendConfigResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteBackendConfigResult* result = [[ApigatewayDeleteBackendConfigResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteBackendConfigResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryRevisionResult
-(id) initWithApis:(NSArray<Api*>*) apis
        totalCount:(NSNumber*)totalCount { 
    self.apis = apis;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apis])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self apis] count]; i++) {
            Api* item = [[self apis] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"apis"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* apisArray = [dictionary objectForKey:@"apis"];
    if(apisArray&&![apisArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [apisArray count];i++)
        {
        Api* item = [[Api alloc]initWithDic:[apisArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.apis = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
@implementation ApigatewayDescribeRevisionsRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    return self;
} 

@end
  
@implementation ApigatewayQueryRevisionResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryRevisionResult* result = [[ApigatewayQueryRevisionResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryRevisionResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDescribeRevisionsResult
-(id) initWithRevisions:(NSArray<RevisionList*>*) revisions
        totalCount:(NSNumber*)totalCount { 
    self.revisions = revisions;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self revisions])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self revisions] count]; i++) {
            RevisionList* item = [[self revisions] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"revisions"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* revisionsArray = [dictionary objectForKey:@"revisions"];
    if(revisionsArray&&![revisionsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [revisionsArray count];i++)
        {
        RevisionList* item = [[RevisionList alloc]initWithDic:[revisionsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.revisions = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
  
@implementation ApigatewayDescribeRevisionsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDescribeRevisionsResult* result = [[ApigatewayDescribeRevisionsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDescribeRevisionsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateRevisionResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateRevisionResult* result = [[ApigatewayCreateRevisionResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateRevisionResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayModifyRevisionResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayModifyRevisionResult* result = [[ApigatewayModifyRevisionResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayModifyRevisionResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayDeleteRevisionResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteRevisionResult* result = [[ApigatewayDeleteRevisionResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteRevisionResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayGetRevisionIdsResult
-(id) initWithRevisions:(NSArray<RevisionList*>*) revisions { 
    self.revisions = revisions;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self revisions])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self revisions] count]; i++) {
            RevisionList* item = [[self revisions] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"revisions"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* revisionsArray = [dictionary objectForKey:@"revisions"];
    if(revisionsArray&&![revisionsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [revisionsArray count];i++)
        {
        RevisionList* item = [[RevisionList alloc]initWithDic:[revisionsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.revisions = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayGetRevisionIdsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayGetRevisionIdsResult* result = [[ApigatewayGetRevisionIdsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayGetRevisionIdsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryRevisionRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    self.revisionId = revisionId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
apiGroupId:(NSString*)apiGroupId
revisionId:(NSString*)revisionId { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.apiGroupId = apiGroupId;
    self.revisionId = revisionId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    if([self apiGroupId])
    {
        [result setValue:[self apiGroupId] forKey:@"apiGroupId"];
    }
    if([self revisionId])
    {
        [result setValue:[self revisionId] forKey:@"revisionId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    self.apiGroupId = [dictionary objectForKey:@"apiGroupId"];
    self.revisionId = [dictionary objectForKey:@"revisionId"];
    return self;
} 

@end
  
@implementation ApigatewayCheckRevisionExistResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCheckRevisionExistResult* result = [[ApigatewayCheckRevisionExistResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCheckRevisionExistResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryUcAccessKeysResult
-(id) initWithAccessKeys:(NSArray<UcAccessKey*>*) accessKeys
        totalCount:(NSNumber*)totalCount { 
    self.accessKeys = accessKeys;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessKeys])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self accessKeys] count]; i++) {
            UcAccessKey* item = [[self accessKeys] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"accessKeys"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* accessKeysArray = [dictionary objectForKey:@"accessKeys"];
    if(accessKeysArray&&![accessKeysArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [accessKeysArray count];i++)
        {
        UcAccessKey* item = [[UcAccessKey alloc]initWithDic:[accessKeysArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.accessKeys = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
@implementation ApigatewayQueryUcAccessKeysRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayQueryUcAccessKeysResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryUcAccessKeysResult* result = [[ApigatewayQueryUcAccessKeysResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryUcAccessKeysResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryKeyInfoResult
-(id) initWithKeyInfo:(KeyInfo*) keyInfo { 
    self.keyInfo = keyInfo;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self keyInfo])
    {
        [result setValue:[[self keyInfo] dictionary]forKey:@"keyInfo"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.keyInfo = [[KeyInfo alloc]initWithDic:[dictionary objectForKey:@"keyInfo"]];
    return self;
} 

@end
  
@implementation ApigatewayQueryKeyInfoResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryKeyInfoResult* result = [[ApigatewayQueryKeyInfoResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryKeyInfoResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayResetKeyResult
-(id) initWithKeyInfo:(KeyInfo*) keyInfo { 
    self.keyInfo = keyInfo;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self keyInfo])
    {
        [result setValue:[[self keyInfo] dictionary]forKey:@"keyInfo"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.keyInfo = [[KeyInfo alloc]initWithDic:[dictionary objectForKey:@"keyInfo"]];
    return self;
} 

@end
  
@implementation ApigatewayResetKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayResetKeyResult* result = [[ApigatewayResetKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayResetKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateKeyResult* result = [[ApigatewayCreateKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayUpdateKeyResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayUpdateKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayUpdateKeyResult* result = [[ApigatewayUpdateKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayUpdateKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryKeysResult
-(id) initWithTotal:(NSNumber*) total
        data:(NSArray<KeyInfo*>*)data { 
    self.total = total;               
    self.data = data;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self total])
    {
        [result setValue:[self total] forKey:@"total"];
    }
    if([self data])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self data] count]; i++) {
            KeyInfo* item = [[self data] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.total = [dictionary objectForKey:@"total"];
    NSArray* dataArray = [dictionary objectForKey:@"data"];
    if(dataArray&&![dataArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataArray count];i++)
        {
        KeyInfo* item = [[KeyInfo alloc]initWithDic:[dataArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.data = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayQueryKeysResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryKeysResult* result = [[ApigatewayQueryKeysResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryKeysResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDescribeApiGroupResult
-(id) initWithApiGroup:(ApiGroup*) apiGroup { 
    self.apiGroup = apiGroup;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiGroup])
    {
        [result setValue:[[self apiGroup] dictionary]forKey:@"apiGroup"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.apiGroup = [[ApiGroup alloc]initWithDic:[dictionary objectForKey:@"apiGroup"]];
    return self;
} 

@end
  
@implementation ApigatewayDescribeApiGroupResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDescribeApiGroupResult* result = [[ApigatewayDescribeApiGroupResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDescribeApiGroupResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateApiGroupResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateApiGroupResult* result = [[ApigatewayCreateApiGroupResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateApiGroupResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCheckGroupNameExistResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCheckGroupNameExistResult* result = [[ApigatewayCheckGroupNameExistResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCheckGroupNameExistResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDeleteApiGroupResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayDeleteApiGroupResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteApiGroupResult* result = [[ApigatewayDeleteApiGroupResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteApiGroupResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDescribeIsDeployApiGroupsRequest
-(id) initWithRegion:(NSString *)regionId
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.filters = filters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.version = version;
    self.filters = filters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    return self;
} 

@end
@implementation ApigatewayDescribeApiGroupsResult
-(id) initWithApiGroups:(NSArray<ApiGroup*>*) apiGroups
        totalCount:(NSNumber*)totalCount { 
    self.apiGroups = apiGroups;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self apiGroups] count]; i++) {
            ApiGroup* item = [[self apiGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"apiGroups"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* apiGroupsArray = [dictionary objectForKey:@"apiGroups"];
    if(apiGroupsArray&&![apiGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [apiGroupsArray count];i++)
        {
        ApiGroup* item = [[ApiGroup alloc]initWithDic:[apiGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.apiGroups = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
@implementation ApigatewayModifyApiGroupAttributeResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayDescribeApiGroupsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDescribeApiGroupsResult* result = [[ApigatewayDescribeApiGroupsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDescribeApiGroupsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDescribeIsDeployApiGroupsResult
-(id) initWithApiGroups:(NSArray<ApiGroup*>*) apiGroups
        totalCount:(NSNumber*)totalCount { 
    self.apiGroups = apiGroups;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self apiGroups] count]; i++) {
            ApiGroup* item = [[self apiGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"apiGroups"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* apiGroupsArray = [dictionary objectForKey:@"apiGroups"];
    if(apiGroupsArray&&![apiGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [apiGroupsArray count];i++)
        {
        ApiGroup* item = [[ApiGroup alloc]initWithDic:[apiGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.apiGroups = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
  
@implementation ApigatewayDescribeIsDeployApiGroupsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDescribeIsDeployApiGroupsResult* result = [[ApigatewayDescribeIsDeployApiGroupsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDescribeIsDeployApiGroupsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayModifyApiGroupAttributeResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayModifyApiGroupAttributeResult* result = [[ApigatewayModifyApiGroupAttributeResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayModifyApiGroupAttributeResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDescribeApiGroupsRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
tagFilters:(NSArray<TagFilter*>*)tagFilters { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.tagFilters = tagFilters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters
tagFilters:(NSArray<TagFilter*>*)tagFilters { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    self.tagFilters = tagFilters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    if([self tagFilters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self tagFilters] count]; i++) {
            TagFilter* item = [[self tagFilters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"tagFilters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    NSArray* tagFiltersArray = [dictionary objectForKey:@"tagFilters"];
    if(tagFiltersArray&&![tagFiltersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [tagFiltersArray count];i++)
        {
        TagFilter* item = [[TagFilter alloc]initWithDic:[tagFiltersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.tagFilters = propertyArray;
    }
    return self;
} 

@end
@implementation ApigatewayQueryUserDomainsResult
-(id) initWithTotal:(NSNumber*) total
        data:(NSArray<DomainInfo*>*)data { 
    self.total = total;               
    self.data = data;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self total])
    {
        [result setValue:[self total] forKey:@"total"];
    }
    if([self data])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self data] count]; i++) {
            DomainInfo* item = [[self data] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.total = [dictionary objectForKey:@"total"];
    NSArray* dataArray = [dictionary objectForKey:@"data"];
    if(dataArray&&![dataArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataArray count];i++)
        {
        DomainInfo* item = [[DomainInfo alloc]initWithDic:[dataArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.data = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayQueryUserDomainsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryUserDomainsResult* result = [[ApigatewayQueryUserDomainsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryUserDomainsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayDeleteUserDomainResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayDeleteUserDomainResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteUserDomainResult* result = [[ApigatewayDeleteUserDomainResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteUserDomainResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateUserDomainResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateUserDomainResult* result = [[ApigatewayCreateUserDomainResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateUserDomainResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryKeyGroupListResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
@implementation ApigatewayQueryAccessKeyResult
-(id) initWithAccessKey:(AccessKey*) accessKey { 
    self.accessKey = accessKey;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessKey])
    {
        [result setValue:[[self accessKey] dictionary]forKey:@"accessKey"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessKey = [[AccessKey alloc]initWithDic:[dictionary objectForKey:@"accessKey"]];
    return self;
} 

@end
@implementation ApigatewayCheckKeyExistResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayQueryAccessKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryAccessKeyResult* result = [[ApigatewayQueryAccessKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryAccessKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryBindGroupKeyResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayQueryBindGroupKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryBindGroupKeyResult* result = [[ApigatewayQueryBindGroupKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryBindGroupKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayQueryKeyGroupListResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryKeyGroupListResult* result = [[ApigatewayQueryKeyGroupListResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryKeyGroupListResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayDeleteAccessKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteAccessKeyResult* result = [[ApigatewayDeleteAccessKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteAccessKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayUpdateAccessKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayUpdateAccessKeyResult* result = [[ApigatewayUpdateAccessKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayUpdateAccessKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayBindGroupKeyResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayBindGroupKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayBindGroupKeyResult* result = [[ApigatewayBindGroupKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayBindGroupKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryAccessKeysResult
-(id) initWithAccessKeys:(NSArray<AccessKey*>*) accessKeys
        totalCount:(NSNumber*)totalCount { 
    self.accessKeys = accessKeys;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessKeys])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self accessKeys] count]; i++) {
            AccessKey* item = [[self accessKeys] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"accessKeys"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* accessKeysArray = [dictionary objectForKey:@"accessKeys"];
    if(accessKeysArray&&![accessKeysArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [accessKeysArray count];i++)
        {
        AccessKey* item = [[AccessKey alloc]initWithDic:[accessKeysArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.accessKeys = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
  
@implementation ApigatewayCreateAccessKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateAccessKeyResult* result = [[ApigatewayCreateAccessKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateAccessKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayQueryAccessKeysResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryAccessKeysResult* result = [[ApigatewayQueryAccessKeysResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryAccessKeysResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryAccessKeysRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayCheckKeyExistResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCheckKeyExistResult* result = [[ApigatewayCheckKeyExistResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCheckKeyExistResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryAccessAuthResult
-(id) initWithAccessAuth:(AccessAuth*) accessAuth { 
    self.accessAuth = accessAuth;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessAuth])
    {
        [result setValue:[[self accessAuth] dictionary]forKey:@"accessAuth"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuth = [[AccessAuth alloc]initWithDic:[dictionary objectForKey:@"accessAuth"]];
    return self;
} 

@end
@implementation ApigatewayQueryAuthGroupListResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayQueryAuthGroupListResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryAuthGroupListResult* result = [[ApigatewayQueryAuthGroupListResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryAuthGroupListResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayAuthorizedApiGroupListResult
-(id) initWithApiGroups:(NSArray<UserBindedGroups*>*) apiGroups { 
    self.apiGroups = apiGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self apiGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self apiGroups] count]; i++) {
            UserBindedGroups* item = [[self apiGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"apiGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* apiGroupsArray = [dictionary objectForKey:@"apiGroups"];
    if(apiGroupsArray&&![apiGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [apiGroupsArray count];i++)
        {
        UserBindedGroups* item = [[UserBindedGroups alloc]initWithDic:[apiGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.apiGroups = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayAuthorizedApiGroupListResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayAuthorizedApiGroupListResult* result = [[ApigatewayAuthorizedApiGroupListResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayAuthorizedApiGroupListResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQueryAccessAuthsResult
-(id) initWithAccessAuths:(NSArray<AccessAuth*>*) accessAuths
        totalCount:(NSNumber*)totalCount { 
    self.accessAuths = accessAuths;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self accessAuths])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self accessAuths] count]; i++) {
            AccessAuth* item = [[self accessAuths] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"accessAuths"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* accessAuthsArray = [dictionary objectForKey:@"accessAuths"];
    if(accessAuthsArray&&![accessAuthsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [accessAuthsArray count];i++)
        {
        AccessAuth* item = [[AccessAuth alloc]initWithDic:[accessAuthsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.accessAuths = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
@implementation ApigatewayQueryAccessAuthsRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    return self;
} 

@end
@implementation ApigatewayBindGroupAuthResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
@implementation ApigatewayCreateAccessAuthRequest
-(id) initWithRegion:(NSString *)regionId
accessAuthView:(AccessAuthView*)accessAuthView { 
    self.regionId = regionId;
    self.accessAuthView = accessAuthView;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthView:(AccessAuthView*)accessAuthView { 
    self.regionId = regionId;
    self.version = version;
    self.accessAuthView = accessAuthView;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessAuthView])
    {
        [result setValue:[[self accessAuthView] dictionary]forKey:@"accessAuthView"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthView = [[AccessAuthView alloc]initWithDic:[dictionary objectForKey:@"accessAuthView"]];
    return self;
} 

@end
@implementation ApigatewayQueryBindGroupAuthResult
-(id) initWithBindGroups:(NSArray<BindGroups*>*) bindGroups { 
    self.bindGroups = bindGroups;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bindGroups])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self bindGroups] count]; i++) {
            BindGroups* item = [[self bindGroups] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bindGroups"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bindGroupsArray = [dictionary objectForKey:@"bindGroups"];
    if(bindGroupsArray&&![bindGroupsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bindGroupsArray count];i++)
        {
        BindGroups* item = [[BindGroups alloc]initWithDic:[bindGroupsArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.bindGroups = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayQueryBindGroupAuthResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryBindGroupAuthResult* result = [[ApigatewayQueryBindGroupAuthResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryBindGroupAuthResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayBindGroupAuthResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayBindGroupAuthResult* result = [[ApigatewayBindGroupAuthResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayBindGroupAuthResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateAccessAuthResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateAccessAuthResult* result = [[ApigatewayCreateAccessAuthResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateAccessAuthResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayUpdateAccessAuthResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayUpdateAccessAuthResult* result = [[ApigatewayUpdateAccessAuthResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayUpdateAccessAuthResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayAuthorizedApiGroupListRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    return self;
} 

@end
  
@implementation ApigatewayQueryAccessAuthsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryAccessAuthsResult* result = [[ApigatewayQueryAccessAuthsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryAccessAuthsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayQueryAccessAuthResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQueryAccessAuthResult* result = [[ApigatewayQueryAccessAuthResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQueryAccessAuthResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayUpdateAccessAuthRequest
-(id) initWithRegion:(NSString *)regionId
accessAuthView:(AccessAuthView*)accessAuthView
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.accessAuthView = accessAuthView;
    self.accessAuthId = accessAuthId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
accessAuthView:(AccessAuthView*)accessAuthView
accessAuthId:(NSString*)accessAuthId { 
    self.regionId = regionId;
    self.version = version;
    self.accessAuthView = accessAuthView;
    self.accessAuthId = accessAuthId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self accessAuthView])
    {
        [result setValue:[[self accessAuthView] dictionary]forKey:@"accessAuthView"];
    }
    if([self accessAuthId])
    {
        [result setValue:[self accessAuthId] forKey:@"accessAuthId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.accessAuthView = [[AccessAuthView alloc]initWithDic:[dictionary objectForKey:@"accessAuthView"]];
    self.accessAuthId = [dictionary objectForKey:@"accessAuthId"];
    return self;
} 

@end
  
@implementation ApigatewayCheckAuthExistResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCheckAuthExistResult* result = [[ApigatewayCheckAuthExistResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCheckAuthExistResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayDeleteAccessAuthResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteAccessAuthResult* result = [[ApigatewayDeleteAccessAuthResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteAccessAuthResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayCheckPinResult
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation ApigatewayCheckPinResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCheckPinResult* result = [[ApigatewayCheckPinResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCheckPinResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayDeleteSubscriptionKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayDeleteSubscriptionKeyResult* result = [[ApigatewayDeleteSubscriptionKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayDeleteSubscriptionKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayCreateSubscriptionKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayCreateSubscriptionKeyResult* result = [[ApigatewayCreateSubscriptionKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayCreateSubscriptionKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation ApigatewayUpdateSubscriptionKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayUpdateSubscriptionKeyResult* result = [[ApigatewayUpdateSubscriptionKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayUpdateSubscriptionKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQuerySubscriptionKeyResult
-(id) initWithSubscriptionKey:(SubscriptionKey*) subscriptionKey { 
    self.subscriptionKey = subscriptionKey;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self subscriptionKey])
    {
        [result setValue:[[self subscriptionKey] dictionary]forKey:@"subscriptionKey"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.subscriptionKey = [[SubscriptionKey alloc]initWithDic:[dictionary objectForKey:@"subscriptionKey"]];
    return self;
} 

@end
  
@implementation ApigatewayQuerySubscriptionKeyResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQuerySubscriptionKeyResult* result = [[ApigatewayQuerySubscriptionKeyResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQuerySubscriptionKeyResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQuerySubscriptionKeysResult
-(id) initWithSubscriptionKeys:(NSArray<SubscriptionKey*>*) subscriptionKeys
        totalCount:(NSNumber*)totalCount { 
    self.subscriptionKeys = subscriptionKeys;               
    self.totalCount = totalCount;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self subscriptionKeys])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self subscriptionKeys] count]; i++) {
            SubscriptionKey* item = [[self subscriptionKeys] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"subscriptionKeys"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* subscriptionKeysArray = [dictionary objectForKey:@"subscriptionKeys"];
    if(subscriptionKeysArray&&![subscriptionKeysArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [subscriptionKeysArray count];i++)
        {
        SubscriptionKey* item = [[SubscriptionKey alloc]initWithDic:[subscriptionKeysArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.subscriptionKeys = propertyArray;
    }
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    return self;
} 

@end
  
@implementation ApigatewayQuerySubscriptionKeysResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
ApigatewayQuerySubscriptionKeysResult* result = [[ApigatewayQuerySubscriptionKeysResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(ApigatewayQuerySubscriptionKeysResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation ApigatewayQuerySubscriptionKeysRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
filters:(NSArray<Filter*>*)filters { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.filters = filters;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self filters])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self filters] count]; i++) {
            Filter* item = [[self filters] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"filters"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    NSArray* filtersArray = [dictionary objectForKey:@"filters"];
    if(filtersArray&&![filtersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [filtersArray count];i++)
        {
        Filter* item = [[Filter alloc]initWithDic:[filtersArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.filters = propertyArray;
    }
    return self;
} 

@end
 
